home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODFDev / ODF / Framewrk / FWEvents / FWEventD.h < prev    next >
Encoding:
Text File  |  1996-09-17  |  3.7 KB  |  93 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                FWEventD.h
  4. //    Release Version:    $ ODF 2 $
  5. //
  6. //    Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  7. //
  8. //========================================================================================
  9.  
  10. #ifndef FWEVENTD_H
  11. #define FWEVENTD_H
  12.  
  13. #ifndef FWODTYPS_H
  14. #include "FWODTyps.h"
  15. #endif
  16.  
  17. #ifndef FWSTDDEF_H
  18. #include "FWStdDef.h"
  19. #endif
  20.  
  21. #ifndef FWRUNTYP_H
  22. #include "FWRunTyp.h"
  23. #endif
  24.  
  25. #ifndef FWPOINT_H
  26. #include "FWPoint.h"
  27. #endif
  28.  
  29. // ----- OpenDoc Includes -----
  30.  
  31. #ifndef FWODMISS_H
  32. #include "FWODMiss.h"
  33. #endif
  34.  
  35. //==============================================================================
  36. //    Forward Declarations
  37. //==============================================================================
  38.  
  39. class FW_MEventHandler;
  40. class FW_CMenuBar;
  41. class FW_CFrame;
  42. class ODFrame;
  43. class ODFacet;
  44.  
  45. //==============================================================================
  46. //     class FW_CEventDispatcher
  47. //==============================================================================
  48.  
  49. class FW_CEventDispatcher
  50. {
  51. public:
  52.     FW_CEventDispatcher();
  53.     FW_CEventDispatcher(FW_MEventHandler* theEventHandler, FW_CMenuBar* theMenuBar);
  54.     virtual ~ FW_CEventDispatcher();
  55.     
  56.     virtual FW_Handled            Dispatch(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, ODEventInfo* eventInfo);
  57.  
  58. protected:
  59.     virtual FW_Handled             DispatchNullEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODEventInfo* eventInfo);
  60.     virtual FW_Handled            DispatchMouseDownEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, FW_Boolean inBackground, ODEventInfo* eventInfo);
  61.     virtual FW_Handled             DispatchMouseUpEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, ODEventInfo* eventInfo);
  62.     virtual FW_Handled             DispatchEmbeddedMouseDownEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, FW_Boolean inBackground, ODEventInfo* eventInfo);
  63.     virtual FW_Handled             DispatchEmbeddedMouseUpEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, ODEventInfo* eventInfo);
  64.     virtual FW_Handled             DispatchBorderMouseDownEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, ODEventInfo* eventInfo);
  65.     virtual FW_Handled             DispatchVirtualKeyDownEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODEventInfo* eventInfo);
  66.     virtual FW_Handled             DispatchVirtualKeyUpEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODEventInfo* eventInfo);
  67.     virtual FW_Handled             DispatchCharKeyEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODEventInfo* eventInfo);
  68.     virtual FW_Handled            DispatchActivateEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODFacet* odFacet, ODEventInfo* eventInfo);
  69.     virtual FW_Handled             DispatchMenuEvent(Environment* ev, ODEventData* event, FW_CFrame* frame, ODEventInfo* eventInfo);
  70.     
  71. #ifdef FW_BUILD_MAC
  72.     virtual FW_Handled             DispatchWindowEvent(Environment* ev, FW_CFrame* frame, ODEventData* event, ODFacet* odFacet, ODEventInfo* eventInfo);
  73.     virtual FW_Handled             DispatchOSEvent(Environment* ev, FW_CFrame* frame, ODEventData* event, ODFacet* odFacet, ODEventInfo* eventInfo);
  74. #endif
  75.  
  76.     static short                OnMouseDown(Environment* ev, ODEventData* event);
  77.     static void                    OnMouseUp(Environment* ev, ODEventData* event);
  78.     
  79.     static unsigned short         fgAutoRepeatCount;
  80.     static FW_PlatformPoint     fgLastMouseUpWhere;
  81.  
  82.     static unsigned long         fgLastMouseUp;
  83.     static short                 fgClickCount;
  84.  
  85. private:
  86.     FW_MEventHandler*             fEventHandler;
  87.     FW_CMenuBar*                 fMenuBar;        // For translating menu events to commands
  88.     FW_MEventHandler*            fLastMouseDownTarget;
  89.     FW_MEventHandler*            fLastMouseDownFrame;
  90. };
  91.  
  92. #endif
  93.